A network processor generally controls the flow of data between a physical transmission medium, such as a physical layer portion of, e.g., an asynchronous transfer mode (ATM) network, and a switch fabric in a router or other type of packet switch. In an ATM network, an ATM Adaptation Layer 2 (AAL2) defines an interface between the transport bearers, e.g., the physical hardware, of the ATM network and an application that is producing information. AAL2 is described in more detail in, for instance, International Telecommunication Union (ITU) Recommendation I.363.2 (1997), the disclosure of which is hereby incorporated by reference. The network processor works in accordance with protocols defined by AAL2 and by ATM in order to create ATM cells containing AAL2 data or to decompose the ATM cells into AAL2 data.
One important type of information contained in AAL2 data is common part sublayer (CPS) packets, which usually contain voice information, video information, or other time-sensitive information. During transmission, voice information, for instance, is generally packaged into CPS packets, which are then packaged into ATM cells. AAL2 layers act as intermediaries between the ATM layer and an access point generating or receiving the CPS packets. Furthermore, the AAL2 specification defines how the CPS packets are packaged into AAL2 cells, which are subsequently packaged into ATM cells. The ATM cells can contain whole or partial CPS packets. During reception, the CPS packets are then recreated from the ATM cells. Voice information is subsequently recreated from the CPS packets.
Voice and other information are handled over ATM networks by creating “virtual channels” through which the information is carried. Additionally, the CPS packets have “channel identifications” (CIDs), also called “connection identifications,” which identify to which “conversation” the CPS packet belongs. Thus, it is possible for one ATM cell, associated with a single virtual channel, to contain voice data from multiple conversations.
Voice over ATM networks is becoming increasingly important because networks that once carried only data are now being merged with or connected to voice networks. It is also important that network processors be able to adequately handle voice information, or other similar information, using AAL2 or other suitable protocols. In particular, a network processor has to handle many different virtual channels and conversations at one time.
A need therefore exists for processors able to adequately handle packets, cells, and their virtual channels and conversations.